import moment from "../utils/moment.js"
import login from "./login.js"

class common {
	constructor(arg) {

	}
	static async go(url, mod = 1) {
		switch (mod) {
			case 1:
				uni.navigateTo({
					url,
				})
			break;
			case 2:
				uni.switchTab({
					url,
				})
			break;
		}
	}
	static getDate() {
		return {
			year:moment().format('YYYY'),
			m:moment().format('MM'),
			d:moment().format('DD'),
			ymd:moment().format('YYYY-MM-DD'),
			startOfMonth:moment().startOf('month').format('YYYY-MM-DD'), //获取当月开始时间
			endOfMonth:moment().endOf('month').format('YYYY-MM-DD'), //获取当月结束时间
			ymdANDday:(day)=>{ //获取当天日期加上day的字符串
				return moment().add(day, 'days').format('YYYY-MM-DD')
			},
			getJiaowuData(id){
				switch(id){
					case 1: //本周
						return moment().startOf('week').format('MM月DD日') + '-' + moment().endOf('week').format('MM月DD日')
					break;
					case 2: //上周
						return moment().startOf('week').add(-1,'week').format('MM月DD日') + '-' + moment().endOf('week').add(-1,'week').format('MM月DD日')
					break;
					case 3: //本月
						return moment().startOf('month').format('MM月DD日') + '-' + moment().endOf('month').format('MM月DD日')
					break;
					case 4: //上月
						return moment().startOf('month').add(-1,'month').format('MM月DD日') + '-' + moment().endOf('month').add(-1,'month').format('MM月DD日')
					break;
				}
			},
			checkDay(time){
				let today = moment().startOf('day').valueOf()
				let t = moment(time).valueOf()
				if(today >= t){
					return true;
				}else{
					return false;
				}
			},
			getAfterDate(day=6){ //获取今日到后6天的星期和ymd时间
				let res = [{date:moment().format('YYYY-MM-DD'),title:changeXingqi(moment().format('e'))+'(今日)',isCheck:true}] 
				for(let i=1;i<=day;i++){
					let date = moment().add(i, 'day').format('YYYY-MM-DD');
					let xingqi = moment().add(i, 'day').format('e');
					res.push({
						date,
						title:changeXingqi(xingqi),
						isCheck:false
					})
				}
				// 在之前再加上个‘历史’项
				res.unshift({
					date:0,
					title:'历史',
					isCheck:false
				})
				return res
			},
			getZhou(){
				return [
					{id:1,title:'上周',start:moment().startOf('week').add(-1,'week').format('YYYY-MM-DD'),end:moment().endOf('week').add(-1,'week').format('YYYY-MM-DD'),isCheck:false},
					{id:2,title:'本周',start:moment().startOf('week').format('YYYY-MM-DD'),end:moment().endOf('week').format('YYYY-MM-DD'),isCheck:true},
					{id:3,title:'下周',start:moment().startOf('week').add(1,'week').format('YYYY-MM-DD'),end:moment().endOf('week').add(1,'week').format('YYYY-MM-DD'),isCheck:false},
				]
			}
		}
	}
}

export default common

function changeXingqi(e){
	let x = ""
	switch(e){
		case 0:
		case '0':
			x = '周一'
		break;
		case 1:
		case '1':
			x = '周二'
		break;
		case 2:
		case '2':
			x = '周三'
		break;
		case 3:
		case '3':
			x = '周四'
		break;
		case 4:
		case '4':
			x = '周五'
		break;
		case 5:
		case '5':
			x = '周六'
		break;
		case 6:
		case '6':
			x = '周日'
		break;
	}
	return x
}

moment.locale('zh-cn', {
	months: '一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月'.split('_'),
	monthsShort: '1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月'.split('_'),
	weekdays: '星期日_星期一_星期二_星期三_星期四_星期五_星期六'.split('_'),
	weekdaysShort: '周日_周一_周二_周三_周四_周五_周六'.split('_'),
	weekdaysMin: '日_一_二_三_四_五_六'.split('_'),
	longDateFormat: {
		LT: 'HH:mm',
		LTS: 'HH:mm:ss',
		L: 'YYYY-MM-DD',
		LL: 'YYYY年MM月DD日',
		LLL: 'YYYY年MM月DD日Ah点mm分',
		LLLL: 'YYYY年MM月DD日ddddAh点mm分',
		l: 'YYYY-M-D',
		ll: 'YYYY年M月D日',
		lll: 'YYYY年M月D日 HH:mm',
		llll: 'YYYY年M月D日dddd HH:mm'
	},
	meridiemParse: /凌晨|早上|上午|中午|下午|晚上/,
	meridiemHour: function(hour, meridiem) {
		if (hour === 12) {
			hour = 0;
		}
		if (meridiem === '凌晨' || meridiem === '早上' ||
			meridiem === '上午') {
			return hour;
		} else if (meridiem === '下午' || meridiem === '晚上') {
			return hour + 12;
		} else {
			// '中午'
			return hour >= 11 ? hour : hour + 12;
		}
	},
	meridiem: function(hour, minute, isLower) {
		const hm = hour * 100 + minute;
		if (hm < 600) {
			return '凌晨';
		} else if (hm < 900) {
			return '早上';
		} else if (hm < 1130) {
			return '上午';
		} else if (hm < 1230) {
			return '中午';
		} else if (hm < 1800) {
			return '下午';
		} else {
			return '晚上';
		}
	},
	calendar: {
		sameDay: '[今天]LT',
		nextDay: '[明天]LT',
		nextWeek: '[下]ddddLT',
		lastDay: '[昨天]LT',
		lastWeek: '[上]ddddLT',
		sameElse: 'L'
	},
	dayOfMonthOrdinalParse: /\d{1,2}(日|月|周)/,
	ordinal: function(number, period) {
		switch (period) {
			case 'd':
			case 'D':
			case 'DDD':
				return number + '日';
			case 'M':
				return number + '月';
			case 'w':
			case 'W':
				return number + '周';
			default:
				return number;
		}
	},
	relativeTime: {
		future: '%s内',
		past: '%s前',
		s: '几秒',
		ss: '%d秒',
		m: '1分钟',
		mm: '%d分钟',
		h: '1小时',
		hh: '%d小时',
		d: '1天',
		dd: '%d天',
		M: '1个月',
		MM: '%d个月',
		y: '1年',
		yy: '%d年'
	},
	week: {
		// GB/T 7408-1994《数据元和交换格式·信息交换·日期和时间表示法》与ISO 8601:1988等效
		dow: 1, // Monday is the first day of the week.
		doy: 4 // The week that contains Jan 4th is the first week of the year.
	}
})